//package com.kws.system.controller;
//
//import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
//import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
//import com.kws.common.core.domain.R;
//import com.kws.common.redis.service.RedisService;
//import com.kws.common.security.utils.SecurityUtils;
//import com.kws.system.api.enumDo.RedisConstant;
//import com.kws.system.domain.SysCompanyMessage;
//import com.kws.system.domain.po.CheckVo;
//import com.kws.system.domain.po.SysCompanyMessagePo;
//import com.kws.system.domain.vo.CreateCompanyMessageRq;
//import com.kws.system.domain.vo.SysCompanyMessageVo;
//import com.kws.system.service.SysCompanyMessageService;
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiOperation;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.*;
//import org.springframework.web.multipart.MultipartFile;
//
///**
// * <b>SysCompanyMessageController</b>
// *
// * @description: SysCompanyMessageController <br>
// * @date: 2024/10/25 11:52 <br>
// * @author: lhm <br>
// * @version: 1.0 <br>
// */
//
//@Api(tags = "企业管理")
//@RestController
//@RequestMapping("/company")
//public class SysCompanyMessageController {
//    private static final Logger logger = LoggerFactory.getLogger(SysCompanyMessageController.class);
//
//    @Autowired
//    private SysCompanyMessageService sysCompanyMessageService;
//    @Autowired
//    private RedisService redisService;
//
//    @ApiOperation("校验当前用户是否已注册企业")
//    @GetMapping("/check/loginCompany")
//    public R checkLoginCompany(){
//        Long userId = SecurityUtils.getUserId();
//        boolean status = sysCompanyMessageService.checkLoginCompany(userId);
//        return R.ok(status);
//    }
//
//    @ApiOperation("校验用户是否已注册企业")
//    @GetMapping("/check/checkLoginCompanyByUserId/{userId}")
//    public R checkLoginCompanyByUserId(@PathVariable Long userId){
//        boolean status = sysCompanyMessageService.checkLoginCompany(userId);
//        return R.ok(status);
//    }
//
//    @ApiOperation("创建企业组织")
//    @PostMapping("/create/company")
//    public R createCompanyMessage(@RequestBody CreateCompanyMessageRq rq){
//        boolean status = sysCompanyMessageService.createCompanyMessage(rq);
//        return R.ok(status);
//    }
//
//    @ApiOperation("审核")
//    @PostMapping("check")
//    public R check(@RequestBody CheckVo checkVo){
//        return R.ok(sysCompanyMessageService.check(checkVo));
//    }
//
//    @ApiOperation("上传文件")
//    @PostMapping("/upload/companyFile")
//    public R uploadCompanyFile(@RequestParam("file") MultipartFile file){
//        String url = sysCompanyMessageService.uploadCompanyFile(file);
//        return R.ok(url);
//    }
//    @ApiOperation("商家入驻申请")
//    @PostMapping("addCompanyMessage")
//    public R addCompanyMessage(@RequestBody SysCompanyMessage sysCompanyMessage){
//        return R.ok(sysCompanyMessageService.save(sysCompanyMessage));
//    }
//
//    @PostMapping("/page")
//    @ApiOperation(value = "商家入驻信息分页")
//    public R<Page<SysCompanyMessage>> pageList(@RequestBody SysCompanyMessagePo sysCompanyMessagePo){
//        return R.ok(sysCompanyMessageService.pageList(sysCompanyMessagePo));
//    }
//
//    @ApiOperation("商家个人信息详情")
//    @GetMapping("/detail")
//    public R detail(){
//        Long userId = SecurityUtils.getUserId();
//        Object cacheObject = redisService.getCacheObject(RedisConstant.COMPANY_MESSAGE.getCode() + userId);
//        if (ObjectUtils.isEmpty(cacheObject)){
//            cacheObject = sysCompanyMessageService.getById(userId);
//            if (ObjectUtils.isEmpty(cacheObject)){
//                throw new RuntimeException("没有查询到该商户信息");
//            }
//        }
//        return R.ok(cacheObject);
//    }
//
//    @ApiOperation(("商家数据统计"))
//    @GetMapping("statistics")
//    public R statistics(){
//        return R.ok(sysCompanyMessageService.statistics());
//    }
//
//}
